package com.webserver.core;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * webserver主类
 *webserver是一个web容器，模拟Tomcat的基础功能，可以管理部署在这里的所有网络应用（若干webapp）
 * 并且可以与客户端（浏览器）进行tcp链接并基于HTTP协议进行交互，从而是的浏览器可以访问当前容器中的
 * 所有网络应用中的资源
 *
 * webapp：网络应用，就是俗称的一个”网络“，每个网络 应用的组成通常都包含：页面。素材{图片，视频
 * }以及用于处理业务的逻辑代码
 */
public class WebServer {
    private ServerSocket serverSocket;
    public WebServer(){
        try {
            System.out.println("正在启动服务器。。。。。");
            serverSocket=new ServerSocket(8888);
            System.out.println("服务器启动成功。。。。.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    public void starta(){
        try {
            while (true) {
                System.out.println("等待客户端链接。。。。");
                Socket socket=serverSocket.accept();
                System.out.println("一个客户端链接了。。。。");
                ClientHandler handler=new ClientHandler(socket);
                Thread t=new Thread(handler);
                t.start();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        WebServer server=new WebServer();
        server.starta();
    }
}
